Image processing apparatus that performs different processes in parallel, method, and program

ABSTRACT

An image processing apparatus includes: a raster data output that executes a first process of outputting raster data; a data transferer that generates image determination-purpose data, and executes a second process of storing the generated image determination-purpose data in a buffer; and a hardware processor that: executes a third process of determining whether an image presented by the image determination-purpose data contains a specific image, generates schedule information indicating a time schedule of the first, second, and third processes, determines each set of raster data on whether the time schedule satisfies an overflow condition, and performs control to extend the buffer, wherein the overflow condition is a condition that a part of a period of the second process overlaps with a part of a period during which the image determination-purpose data for which the third process has not been completed occupies an entire area of the buffer.

Japanese Patent Application No. 2016160465 filed on Aug. 18, 2016,including description, claims, drawings, and abstract the entiredisclosure is incorporated herein by reference in its entirety.

BACKGROUND Technological Field

The present invention relates to an image processing apparatus, andparticularly relates to an image processing apparatus that performsdifferent processes in parallel.

Description of the Related art

A technology is conventionally known which checks whether or not a printtarget contains an image that is prohibited to be duplicated(hereinafter referred to as a specific image), such as a banknote and anegotiable instrument and, if it contains a specific image, prohibitsprinting.

For example, JP 2001-313820 A describes a technology for performing inparallel a process of determining whether or not print data contains aspecific image and a process of generating output image data on thebasis of the print data to promote an increase in the speed of an outputapparatus.

Patent Literature 1: JP 2001-313820 A

Patent Literature 2: JP 9-234911 A

Patent Literature 3: JP 7-256953 A

However, the time required for the process of determining whether or notan image presented by data of each page (hereinafter referred to as pagedata) contains a specific image may be longer than the time required forthe process of generating output image data on the basis of the pagedata. Hence, even if both of the processes are performed in parallel asin the output apparatus described in JP 2001-313820 A, until one of theprocesses for certain page data is completed, the other process for thenext page data cannot start. Therefore, standby time arises. Hence, animage processing apparatus is desired which can perform both of theprocesses in parallel on a plurality of pages at a higher speed.

SUMMARY

The present invention has been made to solve the above problem, and anobject thereof is to provide an image processing apparatus, a method,and a program.

To achieve the abovementioned object, according to an aspect of thepresent invention, an image processing apparatus reflecting one aspectof the present invention comprises: a raster data output that executes afirst process of outputting raster data obtained by developing printdata; a data transferer that generates image determination-purpose dataon the basis of divided data obtained by dividing the raster data fromthe raster data output, and executes a second process of storing thegenerated image determination-purpose data in a buffer, and a hardwareprocessor that: executes a third process of determining whether or notan image presented by the image determination-purpose data stored in thebuffer contains a specific image, generates schedule informationindicating a time schedule of the first, second, and third processes,determines each set of raster data on whether or not the time scheduleindicated by the schedule information satisfies an overflow condition,and upon having determined that the time schedule satisfies the overflowcondition, performs control in such a manner as to extend the buffer,wherein the overflow condition is a condition that at least part of aperiod of the second process overlaps with at least part of a periodduring which the image determination-purpose data for which the thirdprocess has not been completed occupies an entire area of the buffer.

BRIEF DESCRIPTION OF THE DRAWING

The advantages and features provided by one or more embodiments of theinvention will become more fully understood from the detaileddescription given hereinbelow and the appended drawings which are givenby way of illustration only, and thus are not intended as a definitionof the limits of the present invention:

FIG. 1 is an external perspective view of an multi-functional peripheral(MFP) according to a first embodiment of the present invention;

FIG. 2 is a diagram illustrating the configuration of main hardware ofthe MFP according to the first embodiment;

FIG. 3 is a diagram illustrating the functional configuration of the MFPaccording to the first embodiment;

FIG. 4 is a timing chart of a raster data output process, a datatransfer process, and a determination process for a first page of printdata;

FIG. 5 is an example of a timing chart of the raster data outputprocess, the data transfer process, the determination process, and aprinting process for print data containing a plurality of pages;

FIGS. 6A to 6E are timing charts of the raster data output process, thedata transfer process, and the determination process for a case whereinter-paper time T1 is reduced;

FIG. 7 is a flowchart illustrating the flow of processes in the MFPaccording to the first embodiment;

FIGS. 8A and 8B are diagrams illustrating a time schedule of the rasterdata output process, the data transfer process, and the determinationprocess in Example 1;

FIGS. 9A and 9B are diagrams illustrating a time schedule of the rasterdata output process, the data transfer process, and the determinationprocess in Example 2;

FIGS. 10A to 10C are diagrams illustrating a time schedule of the rasterdata output process, the data transfer process, and the determinationprocess in Example 3;

FIG. 11 is a diagram illustrating a time schedule of the raster dataoutput process, the data transfer process, and the determination processfor a case where a determination speed has been changed to a high speedvalue in Example 4;

FIG. 12 is a diagram illustrating a time schedule of the raster dataoutput process, the data transfer process, and the determination processfor a case where the determination speed has been changed to the highspeed value in Example 5;

FIG. 13 is a diagram illustrating a time schedule of the raster dataoutput process, the data transfer process, and the determination processfor a case where the determination speed has been changed to the highspeed value in Example 6;

FIG. 14 is a diagram illustrating a time schedule of the raster dataoutput process, the data transfer process, and the determination processfor a case where the determination speed has been changed to the highspeed value in Example 7;

FIG. 15 is a diagram illustrating a time schedule of the raster dataoutput process, the data transfer process, and the determination processfor a case where the determination speed has been changed to the highspeed value in Example 8;

FIG. 16 is a diagram illustrating a time schedule of the raster dataoutput process, the data transfer process, and the determination processfor a case where the determination speed has been changed to the highspeed value in Example 9;

FIG. 17 is a diagram illustrating the functional configuration of an MFPaccording to a second embodiment of the present invention;

FIG. 18 is a flowchart illustrating the flow of processes in the MFPaccording to the second embodiment; and

FIG. 19 is a diagram illustrating a time schedule of the raster dataoutput process, the data transfer process, and the determination processafter a change to a determination speed that eliminates the necessity ofan extended area within a page.

DETAILED DESCRIPTION OF EMBODIMENTS

Hereinafter, one or more embodiments of the present invention will bedescribed in detail with reference to the drawings. However, the scopeof the invention is not limited to the disclosed embodiments. The samereference numerals are assigned to the same or corresponding portions inthe drawings, and their descriptions are not repeated.

In the following description, “specific image” is an image that isprohibited to be duplicated, such as a banknote and a negotiableinstrument. “Image data” is data presenting various images such as atext and a photograph. “Print data” is image data targeted for printing.“Raster data” is data obtained by converting print data into a bitmapformat where an image can be formed. “Divided data” is data obtained bydividing raster data. “Image determination-purpose data” is data that isgenerated on the basis of divided data, and that is targeted for adetermination on whether or not a specific image is contained. Moreover,“rasterization process” indicates a process of rasterizing print dataand outputting raster data.

First Embodiment

<Hardware Configuration of the MFP>

A multi-functional peripheral (MFP) being an example of an imageprocessing apparatus according to a first embodiment of the presentinvention is an apparatus where various functions of copying, networkprinting, a scanner, a fax, a document server, and the like areincorporated. The MFP is described in detail below.

FIG. 1 is an external perspective view of the MIT according to the firstembodiment. Moreover, FIG. 2 is a diagram illustrating the configurationof main hardware of the MFP.

As illustrated in FIGS. 1 and 2, an MFP 1 includes an operating device11, a display device 12, a scanner device 13, a printer device 14, afinisher device 15, a communication unit 16, a document feeder 17, apaper feed device 18, a CPU 20, a RAM 21, a ROM 22, and a data storageunit 23.

The operating device 11 is configured including a plurality of keys forinputting numerics, characters, symbols, and the like, a sensor forrecognizing a pressed key, and a transmission-purpose circuit thattransmits a signal indicating a recognized key to the CPU 20.

The display device 12 displays a screen for providing messages andinstructions to a user, a screen for prompting the user to input asetting content and a processing content, a screen presenting an imageformed by the MFP 1 and a processing result, and the like. For example,a touchscreen is used as the display device 12. In this case, thedisplay device 12 has a function of detecting a position on thetouchscreen where the user's finger has touched, and transmitting asignal indicating the detection result to the CPU 20.

In this manner, the operating device 11 and the display device 12 act asa user interface for allowing the user to directly operate the MFP 1.

The scanner device 13 photoelectrically reads image information such asphotos, characters, and graphics from documents and acquires image data.The acquired image data is converted into digital data, on which varioustypes of known image processing are performed. The digital data is thentransmitted to the printer device 14 or the communication unit 16 forprinting of the image or data transmission, is stored in the datastorage unit 23 for later use.

The printer device 14 performs a printing process of printing an imagepresented by print data targeted for printing on a recording sheet suchas paper or a film. The print data is image data acquired by the scannerdevice 13, image data received by the communication unit 16 from anexternal device, or image data stored in the data storage unit 23.

The paper feed device 18 is provided to a lower part of a main body ofthe MFP 1, and is used to supply a recording sheet suitable for an imagetargeted for printing to the printer device 14. A recording sheet onwhich the printer device 14 has printed an image, that is, printedmatter, passes through the finisher device 15, undergoes processing suchas stapling and punching in accordance with the mode setting, and thenis discharged into a tray 24.

The communication unit 16 is configured including a transmission unitand a receiving unit, and includes a wireless communication device, anetwork interface card (NIC), a modem, or a terminal adapter (TA) forexchanging data with a mobile viewing terminal or electronic paper.

The data storage unit 23 includes a hard disk 23H and a card reader 23R.The card reader 23R reads data from a memory card 91 such as compactflash (registered trademark) or smart media, or writes data into thememory card 91. The memory card 91 is mainly used to exchange data witha personal computer not via a communication line, or to back up data.

Image data acquired by the scanner device 13 and image data received bythe communication unit 16 from an external device are stored in the harddisk 23H. The data of the hard disk 23H is configured to be referablealso from another image forming apparatus via a network.

The CPU 20 executes a program stored in the ROM 22 or a program loadedin the RAM 21 to control the entire MFP 1. The CPU 20 executes inparallel the rasterization process and a process of determining whetheror not an image presented by print data contains a specific image.

<Functional Configuration of the MFP>

FIG. 3 is a diagram illustrating a functional configuration included inthe MFP 1. As illustrated in FIG. 3, the MFP 1 includes a rasterizationprocessing unit 40, a detection unit 50, and a speed-up processing unit60.

The rasterization processing unit 40, the detection unit 50, and thespeed-up processing unit 60 are configured including blocks that arerealized by the CPU 20 of FIG. 2 executing the program stored in the ROM22, and the RAM 21. The rasterization processing unit 40, the detectionunit 50, and the speed-up processing unit 60 may be configured includinga combination of the blocks that are realized by the CPU 20 executingthe program, the RAM 21, and a circuit.

The rasterization processing unit 40 rasterizes print data and outputsraster data. As illustrated in FIG. 3, the rasterization processing unit40 includes a raster image processor (RIP) processing unit 41, acompression unit 42, a page buffer 43, a decompression unit 44, and adelay buffer 45.

The RIP processing unit 41 executes a RIP process on print data targetedfor printing, the print data being stored in the hard disk 23H.Specifically, the RIP processing unit 41 converts the print data intoraster data being data in a bitmap format in which an image can beformed.

The RIP processing unit 41 divides print data into pages (a first unit),sequentially executes the RIP process on data equal to one page (pagedata) obtained by the division, and generates raster data correspondingto each page.

The compression unit 42 sequentially compresses one page's worth ofraster data generated by the RIP processing unit 41, and stores thecompressed data in the page buffer 43.

The decompression suit 44 decompresses one page's worth of compresseddata stored in the page buffer 43, and executes a raster data outputprocess (a first process) of sequentially outputting the decompressedraster data. In other words, the decompression unit 44 functions as araster data output that outputs raster data in the first unit (on a pagebasis) obtained by developing print data.

The decompression unit 44 stores raster data in the delay buffer 45 andalso outputs the raster data to the detection unit 50.

The delay buffer 45 temporarily stores the raster data outputted fromthe decompression unit 44. The raster data stored in the delay buffer 45is read at an appropriate timing, and outputted to the printer device14. Consequently, the printer device 14 prints an image presented by theraster data on a recording sheet.

The detection unit 50 determines whether or not the image presented bythe raster data outputted from the decompression unit 44 contains aspecific image, and controls the data output from the delay buffer 45 tothe printer device 14 according to the determination result.

As illustrated in FIG. 3, the detection unit 50 includes a datatransferer 51, a determination-purpose buffer 52, an image determinationunit (first determination unit) 53, and a print control unit 54.

The data transferer 51 generates image data on a band basis (hereinafterreferred to as image determination-purpose data) on the basis of thedivided data obtained by dividing one page's worth of raster dataoutputted from the decompression unit 44, and sequentially executes adata transfer process (a second process) of storing the generated imagedetermination-purpose data in the determination-purpose buffer 52.

The size of one band is indicated by the width of raster data in thesub-scanning direction, that is, the number of lines of the raster dataalong the main scanning direction.

The data transferer 51 may perform predetermined image processing onimage determination-purpose data upon generating the imagedetermination-purpose data. For example, the data transferer 51 performsvarious types of image processing suitable for the process ofdetermining a specific image, such as a resolution conversion processand a color conversion process.

The image determination unit 53 sequentially executes a determinationprocess (a third process) of determining whether or not an imagepresented by one band's worth of image data contains a specific image.

Specifically, whenever image determination-purpose data is stored in thedetermination-purpose buffer 52, the image determination unit 53determines whether or not an image presented by the imagedetermination-purpose data contains a specific image. A method for thedetermination process of the image determination unit 53 is simplyrequired to use a known technology such as an image recognition process,and uses, for example, a method disclosed in JP 2001-313820 A.

The image determination unit 53 outputs, to the print control unit 54, aresult of determining each set of image determination-purpose data onwhether or not to contain a specific image. The determination resultincludes a probability value of recognition based on the above imagerecognition process.

The determination-purpose buffer 52 is a memory for temporarily storingimage determination-purpose data. The determination-purpose buffer 52normally has a memory area of a capacity equal to two bands (hereinafterreferred to as the normal area). Hence, it is possible to perform inparallel the data transferer 51's process of storing one band's worth ofimage determination-purpose data in the determination-purpose buffer 52and the image determination unit 53's process of reading one band'sworth of image determination-purpose data front thedetermination-purpose buffer 52.

The print control unit 54 determines whether or not to prohibit theprinting of raster data on the basis of the determination resultreceived from the image determination unit 53. Specifically, when havingreceived the determination result that an image presented by imagedetermination-purpose data contains a specific image, the print controlunit 54 prohibits the printing of a page corresponding to the imagedetermination-purpose data. In other words, the print control unit 54displays, on the display device 12, a print error screen indicatinginformation to the effect that printing is not allowed since a specificimage is contained, without performing the process of outputting rasterdata of the page to the printer device 14.

On the other hand, when having received the determination result thatall sets of image determination-purpose data configuring one page'sworth of raster data do not contain a specific image, the print controlunit 54 reads the raster data from the delay buffer 45 and outputs theraster data to the printer device 14.

The speed-up processing unit 60 increases the speed of the detectionunit 50. The speed-up processing unit 60 includes an informationacquisition unit 61, a schedule information generation unit 62, aspeed-up determination unit (second determination unit) 63, a speedcontrol unit 64, and a buffer control unit 65. The units of the speed-upprocessing unit 60 are described in detail below.

<Methods for the Raster Data Output Process, the Data Transfer Process,and the Determination Process>

Next, the raster data output process executed by the decompression unit44, the data transfer process executed by the data transferer 51, andthe determination process executed by the image determination unit 53,and a method for each process are described in detail.

FIG. 4 is a timing chart of the raster data output process, the datatransfer process, and the determination process for a first page ofprint data. In FIG. 4, the first row indicates the raster data outputprocess by the decompression unit 44, the second row indicates the datatransfer process by the data transferer 51 to the determination-purposebuffer 52, and the third row indicates the determination process by theimage determination unit 53.

As described above, the image determination unit 53 executes thedetermination process on one band's worth of image data. On the otherhand, the size of raster data varies, and is not limited to an integralmultiple of one band. Moreover, in order to increase the determinationaccuracy of the image determination unit 53, it is preferable toincrease the determination accuracy in an outer peripheral portion of animage.

Hence, as illustrated in FIG. 4, the data transferer 51 stores dataobtained by performing image processing on divided data of a firstpredetermined number of lines (less than the number of tines of oneband, for example, the number of lines of a half band) from thebeginning in raster data outputted, as the first imagedetermination-purpose data, in the determination-purpose buffer 52.

Moreover, the data transferer 51 stores blank data of a secondpredetermined number of lines (the number of lines obtained bysubtracting the first predetermined number of lines front the number oflines of one band) (hereinafter referred to as top end-specific blankdata) in the determination-purpose buffer 52.

The data transferer 51 performs image processing on data inpredetermined units (units much smaller than one band). Whenevergenerating data in the predetermined units, on which image processinghas been performed, the data transferer 51 then stores the data asstorage target data in the determination-purpose buffer 52. At thispoint in time, if there is free space in the determination-purposebuffer 52, the data transferer 51 stores the storage target data in thefree space, and if there is no free space, the data transferer 51 movesto processing for the next data in the predetermined unit withoutperforming the data transfer process on the storage target data. Hence,if there is no free space, the storage target data is to become lost.

When the first image determination-purpose data has been stored in thedetermination-purpose buffer 52, the image determination unit 53 readsthe image determination-purpose data and the top end-specific blank datafrons the determination-purpose buffer 52. The image determination unit53 executes the determination process on one band's worth of data beinga combination of the read image determination-purpose data and topend-specific blank data.

The blank data is data indicating a solid white linage. The datatransferer 51 stores the top end-specific blank data in thedetermination-purpose buffer 52 without performing any types of imageprocessing. Hence, the data transferer 51 can store the top end-specificblank data in the determination-purpose buffer 52 much faster than thespeed of the data transfer process of generating imagedetermination-purpose data and storing it in the determination-purposebuffer 52. Hence, FIG. 4 does not illustrate the data transferer 51'sprocess of storing the top end-specific blank data in thedetermination-purpose buffer 52. This point is the same in otherdrawings.

However, the data transferer 51 stores the top end-specific blank datain the determination-purpose buffer 52 until the timing when the imagedetermination unit 53 starts the determination process for the firstimage determination-purpose data.

Consequently, the image determination unit 53 can perform thedetermination process including the outer peripheral portion at the topend of the raster data, and can increase the determination accuracy atthe top end portion of the raster data.

When having completed the determination process for the one band's worthof image data, the image determination unit 53 deletes the one band'sworth of data from the determination-purpose buffer 52. Consequently,the space is freed up on the determination-purpose buffer 52.

Moreover, the data transferer 51 generates, as the second and subsequentimage determination-purpose data, image-processed divided data in bandssubsequent to the first image determination-purpose data, andsequentially stores the image determination-purpose data in thedetermination-purpose buffer 52. Whenever the second and subsequentimage determination-purpose data are stored in the determination-purposebuffer 52, the image determination unit 53 executes the determinationprocess on the image determination-purpose data.

After completing the determination process for certain imagedetermination-purpose data, the image determination unit 53 starts thedetermination process for the next image determination-purpose data. Inother words, if the data transfer process for the next imagedetermination-purpose data has been completed at the timing when thedetermination process for certain image determination-purpose data hasbeen completed, the image determination unit 53 starts the determinationprocess for the next image determination-purpose data. Moreover, unlessthe data transfer process for the next image determination-purpose datahas been completed at the timing when the determination process for thecertain image determination-purpose data has been completed, the imagedetermination unit 53 waits until the data transfer process for the nextimage determination-purpose data is completed, and then starts thedetermination process for the next image determination-purpose data.

Moreover, the number of lines of the last image determination-purposedata in one page's worth of raster data does not always agree with thenumber of lines of one band. If the number of lines of the last imagedetermination-purpose data is less than the number of lines of one band,the data transferer 51 stores the last image determination-purpose datain the determination-purpose buffer 52, and then stores, in thedetermination-purpose buffer 52, blank data equal to the number of linesshort obtained by subtracting the number of lines of the last imagedetermination-purpose data from the number of lines of one band(hereinafter referred to as shortage-specific blank data). Consequently,the image determination unit 53 can execute the determination process onone band's worth of data being a combination of the last imagedetermination-purpose data and the shortage-specific blank data.

FIG. 4 illustrates as if the speed at the time when the data transferer51 stores the shortage-specific blank data is the same as the datatransfer speed of the image determination-purpose data. However, thedata transferer 51 simply stores the shortage-specific blank data in thedetermination-purpose buffer 52 without performing any types of imageprocessing. Accordingly, the data transferer 51 actually stores theshortage-specific blank data much faster than the data transfer speed.

However, until the determination process for the second from the last(the eighth from the beginning in FIG. 4) image determination-purposedata is completed, the second from the last and the last imagedetermination-purpose data and the shortage-specific blank data occupythe normal area equal to two bands in the determination-purpose buffer52. Hence, the data transferer 51 cannot store new data in thedetermination-purpose buffer 52.

Hence, for the sake of convenience, FIG. 4 depicts in such a manner thatthe shortage-specific blank data is stored over a period of time untilthe determination process for the second from the last imagedetermination-purpose data is completed and the space is freed up on thedetermination-purpose buffer 52. This point is the same also in otherdrawings.

FIG. 5 is an example of a timing chart of the raster data outputprocess, the data transfer process, the determination process, and theprinting process for print data containing a plurality of pages.

In FIG. 5, the first row indicates the raster data output process by thedecompression unit 44, the second row indicates the data transferprocess by the data transferer 51 to the determination-purpose buffer52, the third row indicates the determination process by the imagedetermination unit 53, and the fourth row indicates the printing processby the printer device 14.

As illustrated in FIG. 5, the decompression unit 44 starts outputtingraster data of the second and subsequent pages at the timing when presetinter-paper time T1 passes since the output process for raster data of aprevious page has been completed.

In the example illustrated in FIG. 5, the inter-paper time T1 is set insuch a manner that the output process for raster data of the next pagestarts at the timing when the determination process for the last imagedetermination-purpose data of each page has been completed.

When such sufficiently long inter-paper time T1 is set, there is timebetween the timing when the data transfer process for a certain page hasbeen completed and the timing when raster data of the next page isoutputted. Hence, the data transferer 51 can execute the data transferprocess on two consecutive pages without trouble.

The printing process starts after the passage of predetermined timesince the completion of the determination process by the imagedetermination unit 53.

<Problems of the Case Where the Inter-paper Time is Reduced>

If the inter-paper time T1 is sufficiently long as illustrated in FIG.5, there arises a problem that the time between when the raster dataoutput process for the first page starts and when the determinationprocess for the last page is completed is increased. Hence, it isconceivable to reduce the inter-paper time T1. However, if theinter-paper time T1 is reduced, a new problem arises. This point isdescribed below.

FIGS. 6A to 6E are tinting charts of the raster data output process, thedata transfer process, and the determination process for the case wherethe inter-paper time T1 is reduced. FIGS. 6A to 6E illustrate, in anenlarged manner, a period during which the process shifts from the firstpage to the second page. Examples illustrated in FIGS. 6A to 6E areexamples of a case where the speeds of the raster data output process,the data transfer process, and the determination process are the same,and the first number of lines is a half band.

Moreover, in FIGS. 6A to 6E, let the timing when the output process forraster data of the first page is completed be timing t1, let the timingwhen the output process for raster data of the second page starts betiming t2, let the timing when the data transfer process for the firstimage determination-purpose data of the second page is completed betiming t3, let the timing when the determination process for the secondfrom the last image determination-purpose data of the first page iscompleted be timing t4, and let the timing when the determinationprocess for the last image determination-purpose data of the first pageis completed be timing t5.

FIG. 6A is an example of a case where the inter-paper time T1 is set insuch a manner that timing t5 agrees with timing t3.

This case allows time between timing t4 and timing t2. Hence, the datatransferer 51 can continuously execute the data transfer process on aplurality of pages without trouble.

Moreover, since timing t5 agrees with timing t3, the image determinationunit 53 can continuously execute the determination process on aplurality of pages without problems.

FIG. 6B is an example of a case where the inter-paper time T1 is furtherreduced as compared to FIG. 6A. In other words, it is an example of acase where the inter-paper time T1 is set in such a manner that timingt5 when the determination process for the first page is completed isafter timing t3 when the first data transfer process for the second pageis completed, and timing t4 when the second from the last determinationprocess for the first page is completed agrees with timing t2 when thefirst data transfer process for the second page starts.

In this case, timing t4 agrees with timing t2. Accordingly, the datatransferer 51 can continuously perform the data transfer process on aplurality of pages without problems. In other words, the data transferer51 can store the first image determination-purpose data and the topend-specific blank data of the second page in the free space of thedetermination-purpose buffer 52 where the second from the last imagedetermination-purpose data of the first page was stored.

However, at timing t3 when the first data transfer process for thesecond page is completed, the image determination unit 53 has not yetcompleted the last determination process for the first page. In short,the last image determination-purpose data for the first page, theshortage-specific blank data of the first page, the first imagedetermination-purpose data of the second page, and the top end-specificblank data of the second page, for which the determination process hasnot yet been completed, occupy the entire normal area of thedetermination-purpose buffer 52.

Hence, the data transferer 51 cannot perform the second data transferprocess for the second page until timing t5 when the last determinationprocess for the first page is completed. As a result, there arises aproblem that part of the second image determination-purpose data of thesecond page is lost.

FIG. 6C is an example of a case where the inter-paper time T1 is furtherreduced as compared to FIG. 6B. In other words, it is an example wherethe inter-paper time T1 is set in such a manner that timing t2 when thefirst data transfer process for the second page starts comes slightlybefore timing t4 when the second from the last determination process forthe first page is completed.

In this case, at timing t2 when the first data transfer process for thesecond page starts, the last image determination-purpose data of thefirst page, the shortage-specific blank data of the first page, theimage determination-purpose data of the first page, and the topend-specific blank data of the second page still occupy the entirenormal area of the determination-purpose buffer 52.

Hence, the data transferer 51 cannot perform the first data transferprocess on the second page until timing t4 when the second from the lastdetermination process for the first page is completed. Hence, therearises a problem that part of the first image determination-purpose dataof the second page is lost.

At timing t4, the second from the last image determination-purpose dataof the first page is then deleted from the determination-purpose buffer52. Accordingly, the data transferer 51 can perform the data transferprocess from timing t4 to timing t3. Specifically, the data transferer51 stores part (a quarter band) of the first image determination-purposedata and the top end-specific blank data (three-fourths of a band) ofthe second page in the determination-purpose buffer 52.

However, at timing t3, the normal area of the determination-purposebuffer 52 is filled with the data for Which the determination processhas not yet been completed. Hence, as in FIG. 6B, the data transferer 51cannot store the second image determination-purpose data of the secondpage from timing t3 to timing t5 when the last determination process forthe first page is completed. As a result, there arises a problem of dataloss.

FIG. 6D is an example of a case where the inter-paper time T1 is furtherreduced as compared to FIG. 6C. In other words, it is an example wherethe inter-paper time T1 is set in such a manner that timing t4 when thesecond from the last determination process for the first page iscompleted agrees with timing t3 when the first data transfer process forthe second page is completed.

Also in this case, the data transferer 51 cannot perform the datatransfer process on new image determination-purpose data from timing t2to timing t4, as in FIG. 6C. Moreover, the data transferer 51 cannotperform the data transfer process on new image determination-purposedata also from timing t3 to timing t5, as in FIGS. 6B and 6C. As aresult, there arises the problem of data loss.

FIG. 6E is an example of a case where the inter-paper time T1 is set atzero. In other words, it is an example where timing t1 when the rasterdata output process for the first page is completed agrees with timingt2 when the raster data output process for the second page starts (thatis, the timing when the first data transfer process for the second pagestarts).

Also in this case, the data transferer 51 cannot perform the datatransfer process on new image determination-purpose data from timing t2to timing t4, as in FIGS. 6C and 6D. Moreover, the data transferer 51cannot perform the data transfer process on new imagedetermination-purpose data also from timing t3 to timing t5, as in FIGS.6B, 6C, and 6D. As a result, there arises the problem of data loss.

<Configuration of the Speed-up Processing Unit>

As illustrated in FIGS. 6A to 6E, if the inter-paper time T1 is reduced,there arises the problem of data loss. Hence, the MFP 1 of the firstembodiment includes the speed-up processing unit 60. The configurationof the speed-up processing unit 60 is described below.

FIG. 3 is referred to again. The speed-up processing unit 60 includesthe information acquisition unit 61, the schedule information generationunit 62, the speed-up determination unit (second determination unit) 63,the speed control unit 64, and the buffer control unit 65.

The information acquisition unit 61 acquires the following information(1) to (9):

-   (1) The value of the speed that the decompression unit 44 outputs    raster data (hereinafter referred to as the raster data output speed    value) (unit: the number of lines/time),-   (2) The value of the speed of the data transfer process by the data    transferer 51 (hereinafter referred to as the data transfer speed    value) (unit: the number of lines/time),-   (3) The inter-paper time T1,-   (4) The value of the speed of the determination process by the image    determination unit 53 (hereinafter referred to as the determination    speed value) (unit: the number of lines/time),-   (5) The number of lines included in one band (hereinafter referred    to as the number of lines of one band),-   (6) The first number of lines,-   (7) The number of lines of each page targeted for printing    (hereinafter referred to as the line total),-   (8) The number of lines of the last image determination-purpose data    of each page targeted for printing (hereinafter referred to as the    number of bottom end lines L), and-   (9) The number of sets of image determination-purpose data M of each    page targeted for printing.

The raster data output speed value is preset according to theperformance of the compression unit 42 and the decompression unit 44,and is stored in the ROM 22. The data transfer speed value is presetaccording to the performance of a processor configuring the datatransferer 51 and the specifications of the determination-purpose buffer52, and is stored in the ROM 22. The processing speed of the datatransferer 51 is higher than that of the decompression unit 44. The datatransfer speed of the data transferer 51 is limited to the raster dataoutput speed of the previous stage. Hence, the data transfer speed valueis set at the same value as the raster data output speed value.

The number of lines of one band is preset according to the capacityallocated to the determination-purpose buffer 52, and is stored in theROM 22. The first number of lines is preset by a developer/designer ofthe MFP 1, and is stored in the ROM 22.

Hence, the information acquisition unit 61 is simply required toacquire, from the ROM 22, the raster data output speed value, the datatransfer speed value (=the raster data output speed value), the numberof lines of one band, and the first number of lines.

The determination speed value is controlled by the speed control unit 64as described below. Hence, the information acquisition unit 61 acquiresthe currently set determination speed value from the speed control unit64.

An inter-paper time table where a print mode and the inter-paper time T1are associated is stored in the ROM 22. The information acquisition unit61 acquires, from the inter-paper time table, the inter-paper time T1corresponding to the print mode selected by a user input.

For example, the print mode includes three modes: a normal mode, a highspeed mode, and an ultra-high speed mode. The inter-paper time tablewhere the normal mode is associated with the inter-paper time T1illustrated in FIG. 6A, the high speed mode with the inter-paper time T1illustrated in FIG. 6D, and the ultra-high speed mode with theinter-paper time T1=0 is stored in the ROM 22.

Moreover, the information acquisition unit 61 calculates the number oflines of each page on the basis of print data stored in the data storageunit 23, and sets the calculated number of lines as the line total. Theinformation acquisition unit 61 calculates the number of bottom endlines L on the basis of the line total, the number of lines of one band,and the first number of lines of each page. Let the number of bottom endlines L of the n-th page be L_(n) below.

Furthermore, the information acquisition unit 61 calculates the numberof sets of image determination-purpose data M of each page on the basisof the line total and the first number of lines. Let the number of setsof image determination-purpose data M of the n-th page be M_(n) below.

The schedule information generation unit 62 generates scheduleinformation indicating a time schedule of the raster data outputprocess, the data transfer process, and the determination process on thebasis of various kinds of information acquired by the informationacquisition unit 61, before these processes start. Specifically, theschedule information generation unit 62 generates schedule informationindicating the timing to start the raster data output process for eachset of raster data, and the timing to complete the data transfer processand the timing to complete the determination process for each set ofimage determination-purpose data.

The schedule information generation unit 62 regenerates scheduleinformation whenever the information acquisition unit 61 acquires newinformation. A specific processing method of the schedule informationgeneration unit 62 is described below.

The speed-up determination unit 63 determines the necessity orunnecessity of a speed-up process. Specifically, the speed-updetermination unit 63 determines each set of raster data on whether ornot the time schedule indicated by the schedule information satisfies anoverflow condition.

The overflow condition is a condition that at least pail of the periodof the data transfer process overlaps with at least part of the period,during which image determination-purpose data on which the determinationprocess has not been completed occupies the entire area of thedetermination-purpose buffer 52.

Specifically, the speed-up determination unit 63 determines that theoverflow condition is satisfied if at least one of the following firstand second conditions is satisfied.

First condition: timing t2 when the decompression unit 44 starts theoutput process for target raster data is before timing t4 when the imagedetermination unit 53 completes the second from the last determinationprocess for previous rater data.

Second condition: timing t3 when the data transferer 51 completes thefirst data transfer process for target raster data is before timing t5when the image determination unit 53 completes the last determinationprocess for previous raster data.

The speed-up determination unit 63 outputs a speed-up instruction to thespeed control unit 64 if having determined for the first time that eachset of print data satisfies at least one of the first and secondconditions.

If the speed control unit 64 has changed the determination speed asdescribed below, the speed-up determination unit 63 determines whetheror not a time schedule indicated by new schedule information that hasbeen regenerated by the schedule information generation unit 62 on thebasis of the changed determination speed satisfies at least one of thefirst and second conditions. If having determined that the time scheduleindicated by the new schedule information satisfies at least one of thefirst and second conditions, the speed-up determination unit 63 outputsa speed-up instruction to the buffer control unit 65.

The speed control unit 64 controls the determination speed of the imagedetermination unit 53, and outputs the currently set determination speedvalue to the information acquisition unit 61.

Specifically, the speed control unit 64 sets a default value as thedetermination speed at the start of a new print job. The default valueis preset according to the performance of a processor configuring theimage determination unit 53. However, the default value is set at avalue equal to or greater than the data transfer speed value (=theraster data output speed value).

When having received the speed-up instruction from the speed-updetermination unit 63, the speed control unit 64 sets the determinationspeed at a high speed value higher than the default value (for example,double the default value). The high speed value is preset.

The speed control unit 64 changes the determination speed by a methodsuch as (i) changing the number of clocks of the processor configuringthe image determination unit 53, or (ii) temporarily configuring aprocessor allocated for a scanning process and a FAX process as part ofthe image determination unit 53.

When having received the speed-up instruction from the speed-updetermination unit 63, the buffer control unit 65 extends thedetermination-purpose buffer 52. The buffer control unit 65 determinesthe capacity of an extended area in the determination-purpose buffer 52by a method described below.

The buffer control unit 65 uses, as the determination-purpose buffer 52,a memory area allocated for another process such as the scanning processor the FAX process to extend the determination-purpose buffer 52. Hence,while the determination-purpose buffer 52 is being extended, thescanning process or the FAX process is interrupted, the processing speedis limited, or the function is limited.

If the buffer control unit 65 has extended the determination-purposebuffer 52, the data transferer 51 gives a higher priority to the normalarea than the extended area, and stores data in thedetermination-purpose buffer 52. In other words, the data transferer 51stores data first in free space of the normal area if both of theextended area and the normal area have free space.

<Schedule Information Generation Method>

Next, a schedule information generation method by the scheduleinformation generation unit 62 is described. Let the number of pagescontained in print data be N here.

The schedule information generation unit 62 sets the timing when thedecompression unit 44 starts the raster data output process for thefirst page as a reference timing, and generates schedule informationindicating times from the reference timing to the start of the rasterdata output process for each page, to the completion of the datatransfer process for each set of image determination-purpose data, andto the completion of the determination process for each set of imagedetermination-purpose data.

Firstly, the schedule information generation unit 62 calculates timeT4_n from the reference timing to the start of the raster data outputprocess for the n-th page (n is an integer from 1 to N), in accordancewith Math. 1 below.

$\begin{matrix}{{T4\_ n} = \left\{ \begin{matrix}0 & \left( {{{Case}\mspace{14mu}{of}\mspace{14mu} n} = 1} \right) \\{{T\; 1 \times \left( {n - 1} \right)} + {\sum\limits_{m = 1}^{n}\;\frac{L(m)}{S_{L}}}} & \left( {{{Case}\mspace{14mu}{of}\mspace{14mu} n} \geq 2} \right)\end{matrix} \right.} & \left\lbrack {{Math}.\mspace{14mu} 1} \right\rbrack\end{matrix}$

In Math. 1, L(m) indicates the line total of the m-th page, and S_(L)indicates the raster data output speed value.

Next, the schedule information generation unit 62 calculates time T5_n_kfrom the reference timing to the completion of the k-th data transferprocess (k is an integer from 1 to M_(n)) of the n-th page (n is aninteger from 1 to N) (M_(n) is the number of sets of imagedetermination-purpose data of the n-th page), in accordance with Math. 2below.

$\begin{matrix}{{{T5\_ n}{\_ k}} = \left\{ \begin{matrix}\frac{F_{L}}{S_{T}} & \left( {{{{Case}\mspace{14mu}{of}\mspace{14mu} n} = 1},{k = 1}} \right) \\{{T4\_ n} + \frac{F_{L}}{S_{T}}} & \left( {{{{Case}\mspace{14mu}{of}\mspace{14mu} n} \geq 2},{k = 1}} \right) \\{{{T5\_ n}\_ 1} + {\frac{B_{L}}{S_{T}} \times \left( {k - 1} \right)}} & \left( {{{Case}\mspace{14mu}{of}\mspace{14mu} M_{n}} > k \geq 2} \right) \\{{{T5\_ n}\_\left( {M_{n} - 1} \right)} + \frac{L_{n}}{S_{T}}} & \left( {{{Case}\mspace{14mu}{of}\mspace{14mu} k} = M_{n}} \right)\end{matrix} \right.} & \left\lbrack {{Math}.\mspace{14mu} 2} \right\rbrack\end{matrix}$

In Math. 2, F_(L) indicates the first number of lines, S_(T) indicatesthe data transfer speed value, B_(L) indicates the number of lines ofone band, and indicates the number of bottom end lines of the m-th page.

Next, the schedule information generation unit 62 calculates time T6_n_kfrom the reference timing to the completion of the k-th determinationprocess for the n-th page, in accordance with Math. 3 below.

$\begin{matrix}{{{T6\_ n}{\_ k}} = \left\{ \begin{matrix}{{{T5\_}1\_ 1} + \frac{B_{L}}{S_{D}}} & \begin{matrix}\left( {{{{Case}\mspace{14mu}{of}\mspace{14mu} n} = 1},} \right. \\\left. {k = 1} \right)\end{matrix} \\{{{MAX}\left\{ {{{T5\_}1{\_ k}},{{T6\_}1\_\left( {k - 1} \right)}} \right\}} + \frac{B_{L}}{S_{D}}} & \begin{matrix}\left( {{{{Case}\mspace{14mu}{of}\mspace{14mu} n} = 1},} \right. \\\left. {k \geq 2} \right)\end{matrix} \\{{{MAX}\left\{ {{{T5\_ n}{\_ k}},{{T6\_}\left( {n - 1} \right){\_ M}_{({n - 1})}}} \right\}} + \frac{B_{L}}{S_{D}}} & \begin{matrix}\left( {{{{Case}\mspace{14mu}{of}\mspace{14mu} n} \geq 2},} \right. \\\left. {k = 1} \right)\end{matrix} \\{{{MAX}\left\{ {{T\; 5_{n_{k}}},{T\; 6_{n_{k - 1}}}} \right\}} + \frac{B_{L}}{S_{D}}} & \begin{matrix}\left( {{{{Case}\mspace{14mu}{of}\mspace{14mu} n} \geq 2},} \right. \\\left. {k \geq 2} \right)\end{matrix}\end{matrix} \right.} & \left\lbrack {{Math}.\mspace{14mu} 3} \right\rbrack\end{matrix}$

In Math. 3, S_(D) indicates the determination speed value, and B_(L)indicates the number of lines of one band. Moreover, MAX (A, B)indicates the value of A or B, whichever is larger.

<Method for Determining the Capacity of the Extended Area of theDetermination-Purpose Buffer>

Next, a method for determining the capacity of the extended area of thedetermination-purpose buffer 52 by the buffer control unit 65 isdescribed.

The buffer control unit 65 calculates image determination delay time T2and storage delay time T3, which are illustrated below, on the basis ofthe schedule information generated by the schedule informationgeneration unit 62.

The image determination delay time T2 is time from timing t3 when thedata transfer process for the first image determination-purpose data ofeach of the second and subsequent pages is completed (refer to FIGS. 6Ato 6E) to timing t5 when the last determination process of a previouspage is completed (refer to FIGS. 6A to 6E).

The storage delay time T3 is time from timing t2 when the raster dataoutput process for each of the second and subsequent pages starts (referto FIGS. 6A to 6E) to timing t4 when the second from the last datatransfer process of a previous page is completed (refer to FIGS. 6A to6E).

The buffer control unit 65 extracts time T6_(n−1)_M_((n-1)) from thereference timing to the completion of the last (the M_((n-1))-th)determination process for the (n−1)-th page, and time T5_n_1 from thereference timing to the completion of the first data transfer processfor the n-th page, from the schedule information, for each of the secondand subsequent pages. The buffer control unit 65 sets a differencebetween the time T6_(n−1)_M_((n-1)) and the time T5_n_1 as the imagedetermination delay time T2 if the time T6_(n−1)_M_((n-1)) is longerthan the time

Moreover, the buffer control unit 65 extracts time T6_(n−1)_M_((n-1))−1)from the reference timing to the completion of the second from the last((M_((n-1))−1)-th) determination process for the (n−1)-th page and timeT4_n from the reference timing to the start of the raster data outputprocess for the n-th page, from the schedule information, for each ofthe second and subsequent pages. The buffer control unit 65 sets adifference between the time T6_(n−1)_(M_((n-1))−1) and the time T4_n asthe storage delay time T3 if the time T6_(n−1)_(M_((n-1))−1) is longerthan the time T4_n.

The buffer control unit 65 uses time Td of the calculated imagedetermination delay time T2 or storage delay time T3, whichever islonger, to determine a minimum amount of the capacity of the buffer tobe extended (the minimum buffer extension amount) in accordance withEquation (1) below:The minimum buffer extension amount=the time Td×the data transfer speedvalue×one line's capacity  Equation (1)where “one line's capacity” indicates the capacity of one line worth'sof image determination-purpose data.

In other words, if the time schedule satisfies only the first condition,the buffer control unit 65 sets the storage delay time T3 as the time Tdto determine the minimum buffer extension amount by Equation (1) above.The buffer control unit 65 then extends the determination-purpose buffer52 by a capacity equal to or greater than the determined minimum bufferextension amount. Consequently, the buffer control unit 65 can extendthe determination-purpose buffer 52 by a capacity that allows the datatransferer 51 to perform the data transfer process for the storage delaytime T3.

Moreover, if the time schedule satisfies only the second condition, thebuffer control unit 65 sets the image determination delay time T2 as thetime Td to determine the minimum buffer extension amount by Equation (1)above. The buffer control unit 65 then extends the determination-purposebuffer 52 by a capacity equal to or greater than the determined minimumbuffer extension amount. Consequently, the buffer control unit 65 canextend the determination-purpose buffer 52 by a capacity that allows thedata transferer 51 to perform the data. transfer process for the imagedetermination delay time T2.

Furthermore, if the time schedule satisfies both of the first and secondconditions, the buffer control unit 65 uses the time Td of the imagedetermination delay time T2 or the storage delay time T3, whichever islonger, to determine the minimum buffer extension amount by Equation (1)above. The buffer control unit 65 is then required to extend thedetermination-purpose buffer 52 by a capacity equal to or greater thanthe determined minimum buffer extension amount.

<Flow of Processes>

FIG. 7 is a flowchart illustrating the flow of processes in the MFP 1.As illustrated in FIG. 7, when the MFP 1 has accepted an instruction tostart a print job, the information acquisition unit 61 acquires variouskinds of information (step S1). Specifically, the informationacquisition unit 61 acquires the raster data output speed value, thedata transfer speed value, the inter-paper time T1, the determinationspeed value, the number of lines of one band, the first number of lines,the line total of each page, the number of bottom end lines L of eachpage, and the number of sets of image determination-purpose data M ofeach page.

Moreover, in step S1, the speed control unit 64 sets the determinationspeed of the image determination unit 53 at the default value andtransmits the default value as the determination speed value to theinformation acquisition unit 61. The schedule information generationunit 62 then generates schedule information on the basis of theinformation acquired by the information acquisition unit 61.

Next, the speed-up determination unit 63 determines whether or not atime schedule indicated by the schedule information satisfies at leastone of the first and second conditions (step S2).

If the time schedule satisfies at least one of the first and secondconditions (YES in step 52), the speed-up determination unit 63 outputsa speed-up instruction to the speed control unit 64. The speed controlunit 64 then changes the determination speed of the image determinationunit 53 from the default value to the high speed value (step S3).

Moreover, in step S3, the information acquisition unit 61 acquires thehigh speed value as the determination speed value from the speed controlunit 64. The schedule information generation unit 62 then regeneratesschedule information on the basis of the information acquired by theinformation acquisition unit 61.

Next, the speed-up determination unit 63 determines whether or not atime schedule indicated by the newly generated schedule informationsatisfies at least one of the first and second conditions (step 54). Ifthe time schedule satisfies at least one of the first and secondconditions (YES in step S4), the speed-up determination unit 63 outputsa speed-up instruction to the buffer control unit 65.

The buffer control unit 65 calculates the image determination delay timeT2 and the storage delay time T3 (step S5). If it has been determined instep S4 that the time schedule satisfies only the first condition, thebuffer control unit 65 calculates only the storage delay time T3. If ithas been determined in step 54 that the time schedule satisfies only thesecond condition, the buffer control unit 65 calculates only the imagedetermination delay time T2 If it has been determined in step S4 thatthe time schedule satisfies both of the first and second conditions, thebuffer control unit 65 calculates both of the image determination delaytime T2 and the storage delay time T3.

The buffer control unit 65 then calculates the buffer capacity to beextended on the basis of the delay time calculated in step S5 inaccordance with Equation (1) above. The buffer control unit 65 thenextends the determination-purpose buffer 52 by the calculated buffercapacity (step S6). Execution moves to the process of step S7.

Moreover, if NO in step S2, or if NO in step S4, execution moves to theprocess of step S7.

In step S7, the rasterization processing unit 40 and the detection unit50 start processing the target print data.

Next, the image determination unit 53 determines whether or not thedetermination process has been completed for raster data of all thepages (step S8). In other words, the image determination unit 53determines whether or not raster data for which the determinationprocess has not been completed is present.

If the determination process has not been completed for the raster dataof all the pages (that is, if raster data for which the determinationprocess has not been completed remains) (NO in step S8), the imagedetermination unit 53 performs the determination process on the imagedetermination-purpose data stored in the determination-purpose buffer52, and outputs the determination result to the print control unit 54(step S9).

The print control unit 54 determines whether or not the determinationresult indicates that a specific image is contained (step S10).

If the determination result indicates that a specific image is contained(YES in step S10), the print control unit 54 does not output, to theprinter device 14, raster data of a page corresponding to thedetermination result. Consequently, the printing of the page is stopped(step S11).

Next, the print control unit 54 causes the display device 12 to displayan error indicating that printing is not allowed (step S12), and the MFP1 stops the system (step S13).

If the determination result does not indicate that a specific image iscontained (NO in step S10), execution returns to the process of step S8.Moreover, if the determination process has been completed for the rasterdata of all the pages (YES in step S8), the MFP 1 ends the determinationprocess for the target print data.

<Examples of the Processes in the MFP>

As described above, the MFP 1 according to the first embodiment includesthe schedule information generation unit 62 that, when having received aprint job, generates schedule information indicating a time schedule ofthe raster data output process, the data transfer process, and thedetermination process before these processes start. If the time schedulesatisfies the first and second conditions, then the speed control unit64 changes the determination speed of the image determination unit 53 tothe high speed value. Moreover, if a time schedule indicated by scheduleinformation that has been regenerated on the basis of the determinationspeed of the high speed value satisfies the first and second conditions,the buffer control unit 65 extends the determination-purpose buffer 52.

Consequently, even if the inter-paper time T1 is set short, thedetection unit 50 can perform the determination process on all sets ofimage determination-purpose data without the occurrence of data loss.Consequently, the MFP 1 can achieve the speed-up process within theshort inter-paper time T1.

In order to describe achieving the speed-up process without theoccurrence of data loss, examples of the processes in the MFP 1according to the first embodiment are described below. In the followingexamples, unless otherwise stated, it is assumed that an image presentedby print data is two pages, and that the information acquisition unit 61acquires the following information:

-   -   The data transfer speed value: same as the raster data output        speed value,    -   The determination speed value: the default value (same as the        data transfer speed), the high speed value (double the default        value),    -   The first number of lines: half the number of lines of one band,    -   The number of bottom end lines L of each page: a quarter of the        number of lines of one band, and    -   The number of sets of image determination-purpose data M of each        page: 10.

EXAMPLE 1

Example 1 is an example where the inter-paper time T1 illustrated inFIG. 6C is set.

FIGS. 8A and 8B are diagrams illustrating a time schedule of the rasterdata output process, the data transfer process, and the determinationprocess in Example 1. FIG. 8A illustrates a case where the determinationspeed value is the default value (=the data transfer speed). FIG. 8Billustrates a case where the determination speed value is the high speedvalue (=double the data transfer speed).

As illustrated in FIG. 8A, timing t4 when the ninth (the second from thelast) determination process for the first page is completed is aftertiming t2 when the raster data output process for the second pagestarts. Moreover, timing t5 when the tenth (last) determination processfor the first page is completed is after timing t3 when the first datatransfer process for the second page is completed. Hence, if the processstarts in this state, data loss occurs in a period from timing t2 totiming t4 and a period from timing t3 to timing t5.

However, in the MFP 1 according to the first embodiment, it isdetermined in step S2 that the time schedule indicated by the scheduleinformation satisfies the first and second conditions, and, in step S3,the speed control unit 64 changes the determination speed value to thehigh speed value that is double the data transfer speed value.

As illustrated in FIG. 8B, if the determination speed value is changedto the double of the data transfer speed value, timing t4 comes beforetiming t2. Consequently, the data transferer 51 can store the firstimage determination-purpose data of the second page in space of thedetermination-purpose buffer 52 that has been freed up by deleting theninth image determination-purpose data of the first page for which thedetermination process has been performed. Hence, data loss does notoccur.

Moreover, if the determination speed value is changed to the double ofthe data transfer speed value, timing t5 comes before timing t3.Consequently, the data transferer 51 can store the second imagedetermination-purpose data of the second page in space of thedetermination-purpose buffer 52 that has been freed up by deleting thetenth image determination-purpose data of the first page for which thedetermination process has been performed. Hence, data loss does notoccur.

EXAMPLE 2

Example 2 is an example where the inter-paper time T1 illustrated inFIG. 6D (shorter time than Example 1) is set.

FIGS. 9A and 9B are diagrams illustrating a time schedule of the rasterdata output process, the data transfer process, and the determinationprocess in Example 2. FIG. 9A illustrates a case where the determinationspeed value is the default value (=the data transfer speed). FIG. 9Billustrates a case where the determination speed value is the high speedvalue double the data transfer speed).

As illustrated in FIG. 9A, also in Example 2, if the determination speedis the default value, timing t4 is after timing t2, and timing t5 isafter timing t3, as in Example 1. Hence, in step S2 of FIG. 7, thespeed-up determination unit 63 determines that the time scheduleindicated by the schedule information satisfies the first and secondconditions. In step S3, the speed control unit 64 changes thedetermination speed value to the high speed value that is double thedata transfer speed value.

As illustrated in FIG. 9B, if the determination speed value is changedto the double of the data transfer speed value, timing t4 agrees withtiming t2. Consequently, the data transferer 51 can store the firstimage determination-purpose data of the second page in the free space ofthe determination-purpose buffer 52, as in Example 1. Hence, data lossdoes not occur.

Moreover, if the determination speed value is changed to the double ofthe data transfer speed value, timing t5 agrees with timing t3.Consequently, the data transferer 51 can store the second imagedetermination-purpose data of the second page in the free space of thedetermination-purpose buffer 52 as in Example 1. Hence, data loss doesnot occur.

EXAMPLE 3

Example 3 is the example, illustrated in FIG. 6E, where the inter-papertime is set at zero.

FIGS. 10A to 10C are diagrams illustrating a time schedule of the rasterdata output process, the data transfer process, and the determinationprocess in Example 3. FIG. 10A illustrates a case where thedetermination speed value is the default value (=the data transferspeed). FIG. 10B illustrates a case where the determination speed valueis the high speed value (=double the data transfer speed). Moreover,FIG. 10C is a diagram where hatching indicating imagedetermination-purpose data that is stored in the extended area of thedetermination-purpose buffer has been added to FIG. 10B.

As illustrated in FIG. 10A, also in Example 3, if the determinationspeed value is the default value, timing t4 is after timing t2, andtiming t5 is after timing t3, as in Example 1. Hence, in step S2, thespeed-up determination unit 63 determines that the time scheduleindicated by the schedule information satisfies the first and secondconditions. In step S3, the speed control unit 64 then changes thedetermination speed value to the high speed value that is double thedata transfer speed value.

As illustrated in FIG. 10B, even if the determination speed value ischanged to the double of the data transfer speed value, timing t4 isafter timing t2. Hence, if the process starts in this state, data lossoccurs in the period from timing t2 to timing t4.

However, in the MFP 1 according to the first embodiment, the speed-updetermination unit 63 determines in step S4 that the time scheduleindicated by the schedule information that has been regenerated on thebasis of the determination speed value of the high speed value satisfiesthe first and second conditions. The buffer control unit 65 then extendsthe determination-purpose buffer 52 in step S5.

Specifically, the buffer control unit 65 calculates the imagedetermination delay time T2 from timing t3 to timing 15, and the storagedelay time T3 from timing t2 to timing t4. In Example 3, T2 and T3 arethe same. The buffer control unit 65 then extends thedetermination-purpose buffer 52 by a storable capacity (equal to a halfband) by the data transferer 51 for the time T2 (=T3), in accordancewith Equation (1) above.

As illustrated in FIG. 10C, the ninth and tenth imagedetermination-purpose data and the shortage-specific blank data of thefirst page, for which the determination process has not yet beencompleted, occupy the entire normal area of the determination-purposebuffer 52 from timing t2 to timing t4. Hence, the data transferer 51stores the first image determination-purpose data (a quarter band) ofthe second page in the extended area of the determination-purpose buffer52.

Next, at timing t4, the ninth determination process for the first pageis completed. As a result, one band's worth of space is freed up in thenormal area of the determination-purpose buffer 52. Hence, the datatransferer 51 stores the remainder (a quarter band) of the first imagedetermination-purpose data of the second page, the top end-specificblank data (a half band), part (a quarter band) of the second imagedetermination-purpose data of the second page, in the normal area of thedetermination-purpose buffer 52 from timing t4.

In FIG. 10C, arrows pointing from the determination process to the datatransfer process indicate the relationship of free space in the normalarea between the determination process that triggers the freeing of thespace and the data transfer process to the free space. For example, anarrow at the left end in FIG. 10C indicates that the data transferprocess to the space that has been freed up in the normal area by thecompletion of the determination process for the eighth imagedetermination-purpose data is executed on the tenth imagedetermination-purpose data. The same applies in the subsequent drawings.

Moreover, at timing t5, the tenth determination process for the firstpage is completed. As a result, one band's worth of space is freed up inthe normal area of the determination-purpose buffer 52. Hence, the datatransferer 51 stores the remainder (three-fourths of a band) of thesecond image determination-purpose data of the second page, and part (aquarter band) of the third image determination-purpose data of thesecond page in the normal area of the determination-purpose buffer 52from timing t5.

Moreover, at timing to when the data transferer 51 is performing thesecond data transfer process for the second page, the firstdetermination process for the second page is completed. As a result,(three-fourths of a band's worth of) space in the normal area and (aquarter band's worth of) space of the extended area in thedetermination-purpose buffer 52 are freed up.

Hence, the data transferer 51 stores the remainder (equal tothree-fourths of a band) of the third image determination-purpose dataof the second page in the normal area of the determination-purposebuffer 52.

The (h−2)-th (h is an integer equal to or greater than four)determination process for the second page is completed before the timingwhen the h-th data transfer process for the second page starts. Hence,the data transferer 51 can store the h-th image determination-purposedata of the second page in the normal area, freed up by deleting the(h−2) image determination-purpose data, in the determination-purposebuffer 52.

In this manner, even if the time schedule satisfies the first conditionin step S4, the use of the extended area of the determination-purposebuffer 52 allows the MFP 1 to start the data transfer process for thenext raster data in a situation where image determination-purpose datacorresponding to previous raster data and shortage-specific blank dataoccupy the normal area of the determination-purpose buffer 52.

Moreover, even if the time schedule satisfies the second condition instep S4, the use of the extended area of the determination-purposebuffer 52 allows the MFP 1 to start the data transfer process for thesecond image determination-purpose data of the next raster data even ina situation where the last image determination-purpose data of previousraster data and the first image determination-purpose data of the nextraster data occupy the normal area of the determination-purpose buffer52.

In other words, in Example 3, the buffer control unit 65 extends thedetermination-purpose buffer 52 by a half band; accordingly, data losscan be prevented. Hence, the inter-paper time can be set at zero, andthe speed of parallel processing of the rasterization process and thedetermination process can be increased.

In Example 3, only the first image determination-purpose data of thesecond page is stored in the extended area of the determination-purposebuffer 52.

EXAMPLE 4

Example 4 is an example of a case where the inter-paper time is zero andthe high speed value of the determination speed is four-thirds of thedata transfer speed.

FIG. 11 is a diagram illustrating a time schedule of the raster dataoutput process, the data transfer process, and the determination processfor a case where the determination speed has been changed to the highspeed value, in Example 4.

In Example 4, it is determined in steps S2 and S4 that the time scheduleindicated by the schedule information satisfies both of the first andsecond conditions, as in Example 3. Hence, in step S3, the speed controlunit 64 changes the determination speed to four-thirds of the datatransfer speed. Moreover, in step S6, the buffer control unit 65 extendsthe determination-purpose buffer 52.

In Example 4, the image determination delay time T2 is longer than thestorage delay time T3. Hence, the buffer control unit 65 extends thedetermination-purpose buffer 52 by a storable capacity (equal tothree-fourths of a band in Example 4) by the data transferer 51 for thetime T2, in accordance with Equation (1) above.

As illustrated in FIG. 11, the ninth and tenth imagedetermination-purpose data and the shortage-specific blank data of thefirst page, for which the determination process has not yet beencompleted, are stored in the entire normal area of thedetermination-purpose buffer 52 from timing t2 to timing t4. Hence, thedata transferer 51 stores the first image determination-purpose data (ahalf band) of the second page in the extended area of thedetermination-purpose buffer 52.

Next, at timing t4, the ninth determination process for the first pageis completed. As a result, one band's worth of space is freed up in thenormal area of the determination-purpose buffer 52. Hence, the datatransferer 51 stores the top end-specific blank data (a half band) andpart (a half band) of the second image determination-purpose data of thesecond page in the normal area of the determination-purpose buffer 52from tinting t4.

At timing t7 when the data transfer process for part (a half band) ofthe second image determination-purpose data of the second page iscompleted, the entire normal area of the determination-purpose buffer 52is filled with the data for which the determination process has not yetbeen completed. Hence, the data transferer 51 stores part (a quarterband) of the second image determination-purpose data of the second pagein the extended area of the determination-purpose buffer 52 from timingt7 to timing t5 when the tenth determination process for the first pageis completed. Consequently, the entire extended area is filled with thedata.

Next, at timing t5, the tenth determination process for the first pageis completed. As a result, one band's worth of space is freed up in thenormal area of the determination-purpose buffer 52. Hence, the datatransferer 51 stores the remainder (a quarter band) of the second imagedetermination-purpose data of the second page and part (three-fourths ofa band) of the third image determination-purpose data of the second pagein the normal area of the determination-purpose buffer 52 from timingt5.

After timing t5 onward, the data transferer 51 does not need to storethe blank data (the top end-specific blank data or shortage-specificblank data). Hence, the data transfer process and the determinationprocess are performed in parallel on each set of imagedetermination-purpose data to gradually increase the free space in theextended area on the basis of the difference between the determinationspeed value and the data transfer speed value. Hence, the datatransferer 51 can store image determination-purpose data in thedetermination-purpose buffer 52 without problems.

In this manner, in Example 4, the buffer control unit 65 extends thedetermination-purpose buffer 52 by three-fourths of a band. Accordingly,data loss can be prevented. Hence, the inter-paper time can be set atzero, and the speed of parallel processing of the rasterization processand the determination process can be increased.

In Example 4, the first and second image determination-purpose data ofthe second page are stored in the extended area of thedetermination-purpose buffer 52.

EXAMPLE 5

Example 5 is an example of a case where the inter-paper time is zero,the high speed value of the determination speed is four-thirds of thedata transfer speed, and the number of bottom end lines L of the firstpage is one-tenth of the number of lines of one band.

FIG. 12 is a diagram illustrating a time schedule of the raster dataoutput process, the data transfer process, and the determination processfor a case where the determination speed has been changed to the highspeed value in Example 5.

In Example 5, it is determined in steps S2 and S4 that the time scheduleindicated by the schedule information satisfies both of the first andsecond conditions, as in Example 4. Hence, in step S3, the speed controlunit 64 changes the determination speed value to four-thirds of the datatransfer speed value. Moreover, in step S6, the buffer control unit 65extends the determination-purpose buffer 52.

In Example 5, the image determination delay time T2 is longer than thestorage delay time T3. Hence, the buffer control unit 65 extends thedetermination-purpose buffer 52 by a storable capacity (equal tonine-tenths of a band) by the data transferer 51 for the time T2, inaccordance with Equation (1) above.

As illustrated in FIG. 12, the ninth and tenth imagedetermination-purpose data and the shortage-specific blank data of thefirst page, for which the determination process has not yet beencompleted, occupy the entire normal area of the determination-purposebuffer 52 from timing 12 to timing t4. Hence, the data transferer 51stores the first image determination-purpose data (a half band) of thesecond page and the second image determination-purpose data(three-twentieths of a band) of the second page in the extended area ofthe determination-purpose buffer 52.

At tinting t4, the ninth determination process for the first page iscompleted. As a result, one band's worth of space is freed up in thenormal area of the determination-purpose buffer 52. Hence, the datatransferer 51 stores the top end-specific blank data (a half band) andpart (a half band) of the second image determination-purpose data of thesecond page in the normal area of the determination-purpose buffer 52from timing t4.

At timing t7 when the data transfer process for the part (a half band)of the second image determination-purpose data of the second page iscompleted, the entire normal area of the determination-purpose buffer 52is filled with the data for which the determination process has not yetbeen performed. Hence, the data transferer 51 stores part (a quarterband) of the second image determination-purpose data of the second pagein the extended area of the determination-purpose buffer 52 from timingt7 to timing t5 when the tenth determination process for the first pageis completed. Consequently, the entire extended area (equal tonine-tenths of a band) is filled with the data.

Next, at timing t5, the determination process for the tenth imagedetermination-purpose data of the first page is completed. As a result,one band's worth of space is freed up in the normal area of thedetermination-purpose buffer 52. Hence, the data transferer 51 storesthe remainder (one-tenths of a band) of the second imagedetermination-purpose data of the second page and part (nine-tenths of aband) of the third image determination-purpose data of the second pagein the normal area of the determination-purpose buffer 52 from timingt5.

After timing t5 onward, the data transferer 51 does not need to storethe blank data (the top end-specific blank data or shortage-specificblank data). Hence, the data transfer process and the determinationprocess are performed in parallel on each set of imagedetermination-purpose data to gradually increase the free space in theextended area on the basis of the difference between the determinationspeed value and the data transfer speed value. Hence, the datatransferer 51 can store image determination-purpose data in thedetermination-purpose buffer 52 without problems.

In this manner, in Example 5, the buffer control unit 65 extends thedetermination-purpose buffer 52 by nine-tenths of a band; accordingly,data loss can be prevented. Hence, the inter-paper time can be set atzero, and the speed of parallel processing of the rasterization processand the determination process can be increased.

In Example 5, the first, second, and fifth image determination-purposedata of the second page are stored in the extended area of thedetermination-purpose buffer 52.

EXAMPLE 6

Example 6 is an example of a case where the inter-paper time is zero,the high speed value of the determination speed is four-thirds of thedata transfer speed, and the number of bottom end lines L of the firstpage is the same as the number of lines of one band.

FIG. 13 is a diagram illustrating a time schedule of the raster dataoutput process, the data transfer process, and the determination processfor a case where the determination speed has been changed to the highspeed value in Example 6.

In Example 6, it is determined in step S2 that the time scheduleindicated by the schedule information satisfies both of the first andsecond conditions. Hence, in step S3, the speed control unit 64 changesthe determination speed to four-thirds of the data transfer speed.Moreover, in step S4, it is determined that the schedule informationsatisfies the second condition. Hence, in step S6, the buffer controlunit 65 extends the determination-purpose buffer 52.

In Example 6, the schedule information satisfies only the secondcondition. Accordingly, the buffer control unit 65 calculates only theimage determination delay time T2 as the delay time. The buffer controlunit 65 then extends the determination-purpose buffer 52 by a storablecapacity (equal to a quarter band) by the data transferer 51 for thetime T2, in accordance with Equation (1) above.

As illustrated in FIG. 13, at timing t2 when the output of raster dataof the second page starts, the ninth determination process for the firstpage has been completed. Hence, the data transferer 51 stores the firstimage determination-purpose data (a half band) of the second page andthe top end-specific blank data (a half band) in the normal area of thedetermination-purpose buffer 52.

At timing t3 when the data transfer process for the first imagedetermination-purpose data of the second page is completed, the entirenormal area of the determination-purpose buffer 52 is filled with thedata for which the determination process has not yet been completed.Hence, the data transferer 51 stores part (a quarter band) of the secondimage determination-purpose data of the second page in the extended areaof the determination-purpose buffer 52 from timing t3 to timing t5 whenthe tenth determination process for the first page is completed.Consequently, the entire extended area (equal to a quarter band) isfilled with the data.

Next, at timing t5, the determination process for the tenth imagedetermination-purpose data of the first page is completed. As a result,one band's worth of space is freed up in the normal area of thedetermination-purpose buffer 52. Hence, the data transferer 51 storesthe remainder (three-fourths of a band) of the second imagedetermination-purpose data of the second page in the normal area of thedetermination-purpose buffer 52 from timing t5.

After timing t5 onward, the data transferer 51 does not need to storethe blank data (the top end-specific blank data or shortage-specificblank data). Hence, the data transfer process and the determinationprocess are performed in parallel on each set of imagedetermination-purpose data to gradually increase the free space in theextended area on the basis of the difference between the determinationspeed value and the data transfer speed value. Hence, the datatransferer 51 can store image determination-purpose data in thedetermination-purpose buffer 52 without problems.

In this manner, in Example 6, the buffer control unit 65 extends thedetermination-purpose buffer 52 by a quarter band; accordingly, dataloss can be prevented. Hence, the inter-paper time can be set at zero,and the speed of parallel processing of the rasterization process andthe determination process can be increased.

In Example 6, the second image determination-purpose data of the secondpage is stored in the extended area of the determination-purpose buffer52.

EXAMPLE 7

Example 7 is an example of a case where the inter-paper time is zero,and the first number of lines is set at 13/20ths of the number of linesof one band.

FIG. 14 is a diagram illustrating a time schedule of the raster dataoutput process, the data transfer process, and the determination processfor a case where the determination speed has been changed to the highspeed value in Example 7.

In Example 7, it is determined in steps S2 and S4 that the time scheduleindicated by the schedule information satisfies both of the first andsecond conditions, as in Example 4. Hence, in step S3, the speed controlunit 64 changes the determination speed to the double of the datatransfer speed. Moreover, in step S6, the buffer control unit 65 extendsthe determination-purpose buffer 52.

In Example 7, the storage delay time T3 is longer than the imagedetermination delay time T2. Hence, the buffer control unit 65 extendsthe determination-purpose buffer 52 by a storable capacity (equal to aquarter band) by the data transferer 51 for the time T3, in accordancewith Equation (1) above.

As illustrated in FIG. 14, the ninth and tenth imagedetermination-purpose data and the shortage-specific blank data of thefirst page, for which the determination process has not yet beencompleted, are stored in the entire normal area of thedetermination-propose buffer 52 from timing t2 to timing t4. Hence, thedata transferer 51 stores part (a quarter band) of the first imagedetermination-purpose data of the second page in the extended area ofthe determination-purpose buffer 52. Consequently, the entire extendedarea (equal to a quarter band) is filled with the data.

At timing t4, the ninth determination process for the first page iscompleted. As a result, one band's worth of space is freed up in thenormal area of the determination-purpose buffer 52. Hence, the datatransferer 51 stores the remainder (two-fifths of a band) of the firstimage determination-purpose data of the second page, the topend-specific blank data (seven-twentieth of a band), and part (one-tenthof a band) of the second image determination-purpose data of the secondpage in the normal area of the determination-purpose buffer 52 fromtiming t4.

Next, at timing t5, the determination process for the tenth imagedetermination-purpose data of the first page is completed. As a result,one band's worth of space is freed up in the normal area of thedetermination-purpose buffer 52. Hence, the data transferer 51 storesthe remainder (nine-tenths of a band) of the second imagedetermination-purpose data of the second page in the normal area of thedetermination-purpose buffer 52 from timing t5.

After timing t5 onward, the data transferer 51 does not need to storethe blank data (the top end-specific blank data or shortage-specificblank data). Hence, the data transfer process and the determinationprocess are performed in parallel on each set of imagedetermination-purpose data to gradually increase the free space in theextended area on the basis of the difference between the determinationspeed value and the data transfer speed value. Hence, the datatransferer 51 can store image determination-purpose data in thedetermination-purpose buffer 52 without problems.

In this manner, in Example 7, the buffer control unit 65 extends thedetermination-purpose buffer 52 by a quarter band; accordingly, dataloss can be prevented. Hence, the inter-paper time can be set at zero,and the speed of parallel processing of the rasterization process andthe determination process can be increased.

In Example 7, the first image determination-purpose data of the secondpage is stored in the extended area of the determination-purpose buffer52.

EXAMPLE 8

Example 8 is an example of a case where the inter-paper time is zero,and the high speed value of the determination speed is ten-ninths of thedata transfer speed.

FIG. 15 is a diagram illustrating a time schedule of the raster dataoutput process, the data transfer process, and the determination processfor a case where the determination speed has been changed to the highspeed value in Example 8.

In Example 8, it is determined in steps S2 and S4 that the time scheduleindicated by the schedule information satisfies both of the first andsecond conditions. Hence, in step S3, the speed control unit 64 changesthe determination speed to ten-ninths of the data transfer speed.Moreover, in step S6, the buffer control unit 65 extends thedetermination-purpose buffer 52.

In Example 8, the image determination delay time T2 is longer than thestorage delay time T3. Hence, the buffer control unit 65 extends thedetermination-purpose buffer 52 by a storable capacity (equal to21/20ths of a band) by the data transferer 51 for the time T2, inaccordance with Equation (1) above.

As illustrated in FIG. 15, the ninth and tenth imagedetermination-purpose data and the shortage-specific blank data of thefirst page, for which the determination process has not yet beencompleted, are stored in the entire normal area of thedetermination-purpose buffer 52 from timing t2 to timing t4. Hence, thedata transferer 51 stores the first image determination-propose data (ahalf band) of the second page and part (three-twentieth of a band) ofthe second image determination-purpose data of the second page in theextended area of the determination-purpose buffer 52.

At timing t4, the ninth determination process for the first page iscompleted. As a result, one band's worth of space is freed up in thenormal area of the determination-purpose buffer 52. Hence, the datatransferer 51 stores the top end-specific blank data (a half band), part(a half band) of the second image determination-purpose data of thesecond page in the normal area of the determination-purpose buffer 52from timing t4.

At timing t7, the entire normal area of the determination-purpose buffer52 is filled with the data for Which the determination process has notyet been completed. Hence, the data transferer 51 stores the remainder(seven-twentieth of a band) of the second image determination-purposedata of the second page and part (one-twentieth of a band) of the thirdimage determination-purpose data of the second page in the extended areaof the determination-purpose buffer 52 from timing t7 to timing t5 whenthe tenth determination process for the first page is completed.Consequently, the entire extended area (equal to 21/20ths of a band) isfilled with the data.

Next, at timing t5, the determination process for the tenth imagedetermination-purpose data of the first page is completed. As a result,one band's worth of space is freed up in the normal area of thedetermination-purpose buffer 52. Hence, the data transferer 51 storesthe remainder (19/20ths of a band) of the third imagedetermination-purpose data of the second page and part (one-twentieth ofa band) of the fourth image determination-purpose data of the secondpage in the normal area of the determination-purpose buffer 52 fromtiming t5.

After timing t5 onward, the data transferer 51 does not need to storethe blank data (the top end-specific blank data or shortage-specificblank data). Hence, the data transfer process and the determinationprocess are performed in parallel on each set of imagedetermination-purpose data to gradually increase the free space in theextended area on the basis of the determination speed value and the datatransfer speed value. Hence, the data transferer 51 stores imagedetermination-purpose data in the determination-purpose buffer 52without problems.

In this manner, in Example 8, the buffer control unit 65 extends thedetermination-purpose buffer 52 by 21/20ths of a band; accordingly, dataloss can be prevented. Hence, the inter-paper time can be set at zero,and the speed of parallel processing of the rasterization process andthe determination process can be increased.

In Example 8, the first to fifth, seventh, eighth, and eleventh imagedetermination-purpose data of the second page are stored in the extendedarea of the determination-purpose buffer 52.

EXAMPLE 9

Example 9 is an example of a case where an image presented by print datais three pages, the number of sets of image determination-purpose data Mof each page is six, and the high speed value of the determination speedis ten-ninths of the data transfer speed.

FIG. 16 is a diagram illustrating a time schedule of the raster dataoutput process, the data transfer process, and the determination processfor a case where the determination speed has been changed to the highspeed value in Example 9.

In Example 9, it is determined in steps S2 and S4 that the time scheduleindicated by the schedule information satisfies both of the first andsecond conditions. Hence, in step S3, the speed control unit 64 changesthe determination speed to ten-ninths of the data transfer speed.Moreover, in step S6, the buffer control unit 65 extends thedetermination-purpose buffer 52.

In Example 9, the image determination delay time T2 of the third page isthe longest. Hence, the buffer control unit 65 extends thedetermination-purpose buffer 52 by a storable capacity (equal to17/10ths of a band) by the data transferer 51 for the time T2, inaccordance with Equation (1) above.

As illustrated in FIG. 16, the fifth and sixth imagedetermination-purpose data and the shortage-specific blank data of thefirst page, for which the determination process has not yet beencompleted, are stored in the entire normal area of thedetermination-purpose buffer 52 from timing t2 a when the raster dataoutput process for the second page starts to timing t4 a when the fifthdetermination process for the first page is completed. Hence, the datatransferer 51 stores the first image determination-purpose data (a halfband) of the second page and part (three-twentieth of a band) of thesecond image determination-purpose data of the second page in theextended area of the determination-purpose buffer 52.

Next, at timing t4 a, one band's worth of space is freed up in thenormal area of the determination-purpose buffer 52. Hence, the datatransferer 51 stores the top end specific blank data (a half band) andpart (a half band) of the second image determination-purpose data of thesecond page in the normal area of the determination-purpose buffer 52from timing t4 a.

At timing t7 a when the data transfer process for part (a half band) ofthe second image determination-purpose data of the second page iscompleted, the entire normal area of the determination-purpose buffer 52is filled with the data for which the determination process has not yetbeen completed. Hence, the data transferer 51 stores the remainder(seven-twentieths of a band) of the second image determination-purposedata of the second page and part (one-twentieth of a band) of the thirdimage determination-purpose data of the second page in the extended areaof the determination-purpose buffer 52 from timing t7 a to timing t5 awhen the tenth determination-purpose process for the first page iscompleted.

Next, at timing t5 a when the determination process for the first pageis completed, the tenth determination process for the first page iscompleted. As a result, one band's worth of space is freed up in thenormal area of the determination-purpose buffer 52. Hence, the datatransferer 51 stores the remainder (19/20ths of a band) of the thirdimage determination-purpose data of the second page and part(one-twentieth of a band) of the fourth image determination-purpose dataof the second page in the normal area of the determination-purposebuffer 52 from timing t5 a.

Moreover, at timing t6 a when the data transferer 51 is performing thethird data transfer process for the second page, the first determinationprocess for the second page is completed. As a result, (a half band'sworth of space in) the normal area and (a half band's worth of space in)the extended area are freed up on the determination-purpose buffer 52.

Therefore, the data transferer 51 stores part (a half band) of thefourth image determination-purpose data of the second page in the normalarea of the determination-purpose buffer 52.

At timing t8 a when the data transfer process for 11/20ths' worth of thefourth image determination-purpose data of the second page is completed,the entire normal area is filled with the data. Hence, the datatransferer 51 stores part (three-tenths of a band) of the fourth imagedetermination-purpose data of the second page in the extended area ofthe determination-purpose buffer 52 from timing t8 a to timing t9 a whenthe second determination process for the second page is completed.

Next, at timing t9 a, the second determination process for the secondpage is completed. As a result, a half band's worth of space in thenormal area and a half band's worth of space in the extended area arefreed up on the determination-purpose buffer 52. Hence, the datatransferer 51 stores the remainder (three-twentieths of a band) of thefourth image determination-purpose data of the second page and part(seven-twentieths of a band) of the fifth image determination-purposedata of the second page are stored in the normal area of thedetermination-purpose buffer 52 from timing t9 a.

At timing t10 a when the data transfer process for part (three-tenths ofa band) of the fifth image determination-purpose data of the second pageis completed, the entire normal area is filled with the data. Hence, thedata transferer 51 stores part (two-fifths of a band) of the fifth imagedetermination-purpose data of the second page in the extended area ofthe determination-purpose buffer 52 from timing t10 a to timing t11 awhen the third determination process for the second page is completed.

Next, at timing t11 a, the third determination process for the secondpage is completed. As a result, 19/20ths of a band's worth of space inthe normal area and one-twentieth of a band's worth of space in theextended area are freed up on the determination-purpose buffer 52.Hence, the data transferer 51 stores the remainder (a quarter band) ofthe fifth image determination-purpose data of the second page in thenormal area of the determination-purpose buffer 52 from timing t11 a.

At timing t12 a when the fifth data transfer process for the second pageis completed, seven-tenths of a band's worth of space in the normal areaand one band's worth of space in the extended area are freed up on thedetermination-purpose buffer 52.

Hence, the data transferer 51 stores the sixth imagedetermination-purpose data (a quarter band) of the second page, theshortage-specific blank data (three-fourths of a band) of the secondpage, and part (two-fifths of a band) of the first imagedetermination-purpose data of the third page in (seven-tenths of aband's worth of space in) the normal area and (seven-tenths of a band'sworth of space in) the extended area of the determination-purpose buffer52 from timing t12 a to timing t13 a when the fourth determinationprocess for the second page is completed.

Next, when the fourth determination process for the second page iscompleted at timing t13 a, seven-tenths of a band's worth of space inthe normal area and three-tenths of a band's worth of space in theextended area are newly freed up on the determination-purpose buffer 52.At this point in time, the total free space is seven-tenths of a band'sworth of space in the normal area and three-fifths of a band's worth ofspace in the extended area.

Hence, the data transferer 51 stores the remainder (one-tenth of a band)of the first image determination-purpose data of the third page, part(two-fifths of a band) of the top end-specific blank data of the thirdpage, and part (four-fifths of a band) of the second imagedetermination-purpose data of the third page in the entire free spacefrom timing t13 a to timing t4 when the fifth determination process forthe second page is completed.

Next, when the fifth determination process for the second page iscompleted at timing t4, three-fifths of a band's worth of space in thenormal area and two-fifths of a band's worth of space in the extendedarea are freed up on the determination-purpose buffer 52.

Hence, the data transferer 51 stores the remainder (one-tenth of a band)of the top end-specific blank data of the third page, the remainder(one-fifth of a band) of the second image determination-purpose data ofthe third page, and part (seven-tenths of a band) of the third imagedetermination-purpose data of the third page in the free space fromtiming t4 to timing t5 when the determination process for the sixthimage determination-purpose data of the second page is completed.Consequently, the entire extended area is filled with the data.

After timing t5 onward, the data transferer 51 does not need to storethe blank data (the top end-specific blank data or shortage-specificblank data). Hence, the data transfer process and the determinationprocess are performed in parallel on each set of imagedetermination-purpose data to gradually increase the free space in theextended area on the basis of the difference between the determinationspeed value and the data transfer speed value. Hence, the datatransferer 51 can store image determination-purpose data in thedetermination-purpose buffer 52 without problems.

In this manner, if print data contains three or more pages, the buffercontrol unit 65 extends the determination-purpose buffer 52 by astorable capacity by the data transferer 51 for the longest time of thestorage delay times and the image determination delay times of thepages. Consequently, data loss can be prevented. Hence, the inter-papertime can be set at zero, and the speed of parallel processing of therasterization process and the determination process can be increased.

Modification 1

In the above description, the buffer control unit 65 determines thebuffer's capacity to be extended on the basis of the longest time of thestorage delay time and the image determination delay time of each pageif print data contains three or more pages. However, the buffer controlunit 65 may determine the buffer's capacity to be extended on a page bypage basis.

In this case, the buffer control unit 65 calculates the storage delaytime T3 and the image determination delay time T2 for each of the secondand subsequent pages. The buffer control unit 65 is simply required todetermine, for each page, the buffer's capacity to be extended on thebasis of the storage delay time T3 or image determination delay time T2calculated for the page, whichever is longer.

While the data transferer 51 is performing the data transfer process onimage determination-purpose data of the n-th page (n an integer equal toor greater than two), the buffer control unit 65 extends thedetermination-purpose buffer 52 by a capacity determined for the n-thpage.

Consequently, the buffer control unit 65 can extend thedetermination-purpose buffer 52 by an optimum capacity for each page. Asa result, the MFP 1 can reduce the amount (reduction amount) of a memoryarea for another process, the memory area being reduced to extend thedetermination-purpose buffer 52.

Modification 2

As described above in examples 3 to 8, image determination-purpose dataof a predetermined number and later within a page is not stored in theextended area of the determination-purpose buffer 52. Hence, the buffercontrol unit 65 may release the extended area of thedetermination-purpose buffer 52 at a timing when the extended areabecomes unnecessary and return to the normal area alone.

It is assumed here that the time required by the data transferer 51 tostore one band's worth of data in the determination-purpose buffer 52 isthe one band storage time, and the time required by the imagedetermination unit 53 to perform the determination process on one band'sworth of data is the one band determination time.

The determination speed value is larger than the data transfer speedvalue. Accordingly, whenever one band's worth of imagedetermination-purpose data is processed, the time difference between thetiming when the data storage process for each set of imagedetermination-purpose data is completed and the timing when thedetermination process for the image determination-purpose data starts isreduced by the difference between the one band storage time and the oneband determination time. The time difference of the first imagedetermination-purpose data of a certain page is the image determinationdelay time T2 of the page.

At and after the timing when the timing when the data storage processfor a certain set of image determination-purpose data is completedagrees with the timing when the determination process starts, the datatransferer 51 does not need to store data in the extended area of thedetermination-purpose buffer 52. In other words, the extended areabecomes unnecessary.

Hence, the buffer control unit 65 calculates the number of sets of imagedetermination-purpose data until the extended area becomes unnecessary(hereinafter referred to as the resolution number) on the basis of theinformation acquired by the information acquisition unit 61, inaccordance with Equation (2) below:The resolution number the image determination delay time T2/{(the numberof lines of one band/the data transfer speed)−(the number of lines ofone band/the determination speed)}  Equation (2)

In Equation (2), (the number of lines of one band/the data transferspeed) indicates the one band storage time. (The number of lines of oneband/the determination speed) indicates the one band determination time.

In terms of the last page, the buffer control unit 65 is simply requiredto release the extended area of the determination-purpose buffer 52 andreturn to the normal area alone after the timing when the determinationprocess of the resolution number calculated by Equation (2) iscompleted.

Alternatively, in a case of Modification 1 above being applied, thebuffer control unit 65 is simply required. on a page basis to releasethe extended area of the determination-purpose buffer 52 and return tothe normal area alone after the timing When the determination process ofthe resolution number calculated by Equation (2) is completed. Thebuffer control unit 65 is then required to extend thedetermination-purpose buffer 52 again at the timing when the next pageis started being processed.

Consequently, the buffer control unit 65 can extend thedetermination-purpose buffer 52 only during a necessary period. As aresult, the MFP 1 can restrict the limited period of the memory areaallocated to another process to a minimum to extend thedetermination-purpose buffer 52.

Modification 3

In the above description, if the time schedule indicated by the scheduleinformation is determined to satisfy at least one of the first andsecond conditions, it is assumed that the speed control unit 64 changesthe determination speed value of the image determination unit 53 fromthe default value to the high speed value.

However, if the performance of the processor allocated to the imagedetermination unit 53 is relatively high, the high speed value may bepreset as the default value of the determination speed value of theimage determination unit 53. In other words, the image determinationunit 53 can always execute the determination process at thedetermination speed of the high speed value (for example, the double ofthe data transfer speed). In this case, the MFP 1 may not include thespeed control unit 64.

Modification 4

The above first and second conditions are premised on the output ofraster data corresponding to a plurality of pages. Hence, only if thedecompression unit 44 continuously outputs a plurality of sets of rasterdata, that is, only if print data contains data of a plurality of pages,the speed-up processing unit 60 may operate.

Modification 5

In the above description, the normal area of the determination-purposebuffer 52 is premised on a capacity equal to two bands. However, thecapacity of the normal area of the determination-purpose buffer 52 mayexceed two bands.

In this case, the information acquisition unit 61 acquires the capacityof the normal area of the determination-purpose buffer 52. The capacityis preset by a designer of the MFP 1, and is stored in advance in theROM 22.

The speed-up determination unit 63 is simply required to determinewhether or not the time schedule satisfies the overflow condition,considering the capacity of the normal area of the determination-purposebuffer 52. It is assumed, for example, that the capacity of the normalarea of the determination-purpose buffer 52 is (two bands+α), and thatthe time required for the data transfer process for imagedetermination-purpose data equal to the capacity α is Tα. At this pointin time, if the time schedule satisfies at least one of the followingthird and fourth conditions, the speed-up determination unit 63 issimply required to determine that the time schedule satisfies theoverflow condition.

Third condition: the timing when the time Tα has passed since timing t2when the decompression unit 44 starts the output process of targetraster data is before timing t4 when the image determination unit 53completes the second from the last determination process for previousraster data.

Fourth condition: the timing when the time Ta has passed since timing t3when the data transferer 51 completes the first data transfer processfor target raster data is before timing t5 when the image determinationunit 53 completes the last determination process for previous rasterdata.

Second Embodiment

An MFP according to a second embodiment of the present invention isdescribed below. The hardware configuration of the MFP according to thesecond embodiment is the same as the configuration of the firstembodiment illustrated in FIG. 2; accordingly, its description isomitted.

FIG. 17 is a diagram illustrating the functional configuration of theMFP according to the second embodiment. As illustrated in FIG. 17, theMFP according to the second embodiment is different from the MFP 1 ofthe first embodiment in the respect of including a speed-up processingunit 60 a instead of the speed-up processing unit 60.

The speed-up processing unit 60 a is different from the speed-upprocessing unit 60 only in the respect of including a speed control unit64 a instead of the speed control unit 64.

The speed control unit 64 a controls the determination speed of theimage determination unit 53, and outputs the currently set determinationspeed value to the information acquisition unit 61.

Specifically, the speed control unit 64 a sets the determination speedvalue at a default value at the start of a new print job. The defaultvalue is preset according to the performance of a processor configuringthe image determination unit 53. However, the default value is set at ahigher value (for example, ten-ninths of the data transfer speed) thanthe data transfer speed value the raster data output speed value).

Moreover, the speed control unit 64 a calculates the number of sets ofimage determination-purpose data until the extended area becomesunnecessary (the resolution number) on the basis of the scheduleinformation generated by the schedule information generation unit 62, inaccordance with Equation (2) below. Equation (2) is the same as theequation illustrated in Modification 2 of the first embodiment.The resolution number the image determination delay time T2/{(the numberof lines of one band/the data transfer speed)−(the number of lines ofone band/the determination speed)}  Equation (2)

The speed control unit 64 a compares the calculated resolution numberand the number of sets of image determination-purpose data M included ineach page. If the calculated resolution number is larger than the numberM, the speed control unit 64 a calculates a required determination speedin accordance with Equation (3) below:The required determination speed=the number of lines of one band/{(thenumber of lines of one band/the data transfer speed)−T2/M}  Equation (3)

The speed control unit 64 a controls the determination speed of theimage determination unit 53 to equal to or greater than the calculatedrequired determination speed.

<Flow of Processes in the MFP>

FIG. 18 is a flowchart illustrating the flow of processes in the MFPaccording to the second embodiment. As illustrated in FIG. 18, when theMIT has accepted an instruction to start a print job, the informationacquisition unit 61 acquires various kinds of information (step S21). Atthis point in time, the speed control unit 64 a sets the determinationspeed value of the image determination unit 53 at the default value.

In step S21, the speed control unit 64 a sets the determination speedvalue of the image determination unit 53 at the default value, andtransmits the default value to the information acquisition unit 61. Theschedule information generation unit 62 then generates scheduleinformation on the basis of the information (including the determinationspeed indicating the default value) acquired by the informationacquisition unit 61.

Next, the speed-up determination unit 63 determines whether or not atime schedule indicated by the schedule information satisfies at leastone of the first and second conditions (step S22).

If the time schedule satisfies at least one of the first and secondconditions (YES in step S22), the speed-up determination unit 63 outputsa speed-up instruction to the speed control unit 64 a.

The speed control unit 64 a, which has received the speed-upinstruction, calculates the resolution number by Equation (2) above onthe basis of the schedule information (step S23).

Next, the speed control unit 64 a determines whether or not the extendedarea becomes unnecessary within a page (step 524). Specifically, thespeed control unit 64 a compares the resolution number calculated instep S23 and the number of sets of image determination-purpose data Mincluded in each page. If the resolution number is equal to or less thanthe number M, then the speed control unit 64 a determines that theextended area becomes unnecessary within the page.

If the extended area does not become unnecessary within the page (NO instep S24), the speed control unit 64 a calculates the requireddetermination speed on the basis of Equation (3) above. The speedcontrol unit 64 a then controls the determination speed of the imagedetermination unit 53 to equal to or greater than the calculatedrequired determination speed (step S25).

In step S25, the information acquisition unit 61 acquires the value ofthe changed determination speed from the speed control unit 64. Theschedule information generation unit 62 then regenerates scheduleinformation on the basis of the information acquired by the informationacquisition unit 61.

Next, the buffer control unit 65 calculates the image determinationdelay time T2 and the storage delay time T3 on the basis of the latestschedule information. In other words, if performing step S27 after stepS25, the buffer control unit 65 calculates delay time on the basis ofthe schedule information that has been generated on the basis of thechanged determination speed. Moreover, if YES in step S24, the buffercontrol unit 65 calculates delay time on the basis of the scheduleinformation that has been generated on the basis of the determinationspeed of the default value. The buffer control unit 65 then calculates acapacity to be extended, by Equation (1) above, on the basis of thecalculated delay time, and extends the determination-purpose buffer 52by the calculated capacity (step S26).

If, for example, raster data similar to the one in Example 9 of thefirst embodiment illustrated in FIG. 16 is outputted, and the defaultvalue of the determination speed is ten-ninths of the data transferspeed, the speed control unit 64 a determines in step 524 that the delaytime cannot be resolved within the page. In step S25, the speed controlunit 64 a then changes the determination speed of the imagedetermination unit 53 to a speed that allows the delay time to beresolved within the page. Furthermore, the buffer control unit 65determines the buffer's capacity to be extended, on the basis of thechanged determination speed.

FIG. 19 is a diagram illustrating a time schedule of the raster dataoutput process, the data transfer process, and the determination processafter a change to a determination speed that eliminates the necessity ofthe extended area within a page (here, four-thirds of the data transferspeed).

As illustrated in FIG. 19, the image determination delay time of eachpage is resolved by processing image determination data within the imageHence, the delay time is not accumulated every page. Therefore, thebuffer control unit 65 can reduce the capacity of the extended area ofthe determination-purpose buffer 52. As a result, the MFP can reduce theamount (reduction amount) of the memory area for another process, thememory area being reduced to extend the determination-purpose buffer 52.

In the above first and second embodiments, a program may be providedwhich causes the MFP 1 to execute the above-mentioned operations(including steps S1 to S6 (especially, steps S3 to S6) illustrated inFIG. 7, or steps S21 to S26 illustrated in FIG. 18). Such a program canalso be provided as a program product by being recorded in a computerreadable recording medium such as a flexible disk, a compact disk-readonly memory (CD-ROM), a ROM, a RAM, or a memory card, which is suppliedwith a computer of the MFP 1. Alternatively, the program can also beprovided by being recorded in a recording medium such as a hard diskbuilt in the computer. Moreover, the program can also be provided bybeing downloaded via a network.

The program may call necessary modules in a predetermined array fromprogram modules provided as part of an operating system (OS) of thecomputer at a predetermined timing to execute processes. In this case,the program itself does not include the above modules and executes theprocesses in cooperation with the OS.

Moreover, the program according to the first and second embodiments maybe provided, incorporated in part of another program. Also in that case,the program itself does not include modules included in the otherprogram, and executes the processes in cooperation with the otherprogram. Such a program incorporated in another program can also beincluded in the program according to the first and second embodiments.

The program product provided is executed by being installed in a programstorage unit such as a hard disk. The program product includes theprogram itself and a recording medium where the program has beenrecorded.

Although embodiments of the present invention have been described andillustrated in detail, it is clearly understood that the same is by wayof illustration and example only and not limitation, the scope of thepresent invention should be interpreted by terms of the appended claims.The scope of the present invention is intended to include meaningsequivalent to the claims and all modifications within the scope.

What is claimed is:
 1. An image processing apparatus comprising: araster data output that executes a first process of outputting rasterdata obtained by developing print data; a data transferer that generatesimage determination-purpose data on the basis of divided data obtainedby dividing the raster data from the raster data output, and executes asecond process of storing the generated image determination-purpose datain a buffer; and a hardware processor that: executes a third process ofdetermining whether or not an image presented by the imagedetermination-purpose data stored in the buffer contains a specificimage, generates schedule information indicating a time schedule of thefirst, second, and third processes, determines each set of raster dataon whether or not the time schedule indicated by the scheduleinformation satisfies an overflow condition, and upon having determinedthat the time schedule satisfies the overflow condition, performscontrol in such a manner as to extend the buffer, wherein the overflowcondition is a condition that at least part of a period of the secondprocess overlaps with at least part of a period during which the imagedetermination-purpose data for which the third process has not beencompleted occupies an entire area of the buffer.
 2. The image processingapparatus according to claim 1, wherein upon the time schedule indicatedby the schedule information satisfying at least one of a first conditionand a second condition, the hardware processor determines each set ofraster data to satisfy the overflow condition, the first condition is acondition that a first timing when the first process for target rasterdata starts is before a second timing when the third process for thesecond from the last image determination-purpose data of previous raterdata is completed, and the second condition is a condition that a thirdtiming when the second process for the first image determination-purposedata of target raster data is completed is before a fourth timing whenthe third process for the last image determination-purpose data ofprevious raster data is completed.
 3. The image processing apparatusaccording to claim 2, wherein the hardware processor generates, as theschedule information, information indicating time from a referencetiming being a timing when the raster data output starts the firstprocess for the first raster data to each of the first, second, third,and fourth timings, and on the basis of the schedule information, uponthe time from the reference timing to the first timing being shorterthan the time from the reference timing to the second timing, determinesthat the time schedule satisfies the first condition, and upon the timefrom the reference timing to the third timing being shorter than thetime from the reference timing to the fourth timing, determines that thetime schedule satisfies the second condition.
 4. The image processingapparatus according to claim 2, wherein the hardware processor (1) uponthe time schedule indicated by the schedule information satisfying thefirst condition but not satisfying the second condition, performscontrol in such a manner as to extend the buffer by a first capacitythat allows the data transferer to perform the second process for timefrom the first timing to the second timing, (2) upon the time scheduleindicated by the schedule information satisfying the second conditionbut not satisfying the first condition, performs control in such amanner as to extend the buffer by a second capacity that allows the datatransferer to perform the second process for time from the third timingto the fourth timing, and (3) upon the time schedule indicated by theschedule information satisfying both of the first and second conditions,performs control in such a manner as to extend the buffer by the firstor second capacity, whichever is larger.
 5. The image processingapparatus according to claim 2, wherein the hardware processor performscontrol in such a mariner as to calculate a resolution number being avalue obtained by dividing time from the third timing to the fourthtiming by a difference between time required for the second process forone set of the image determination-purpose data and time required forthe third process for one set of the image determination-purpose data,on the basis of a processing speed of the second process and aprocessing speed of the third process, complete the third process forthe image determination-purpose data of up to an integral numberexceeding the calculated resolution number for each set of raster data,and then release the extended area of the buffer.
 6. The imageprocessing apparatus according to claim 2, wherein upon havingdetermined that the time schedule indicated by the schedule informationsatisfies the second condition, the hardware processor calculates aresolution number being a value obtained by dividing time from the thirdtiming to the fourth timing by a difference between time required forthe second process for one set of the image determination-purpose dataand time required for the third process for one set of the imagedetermination-purpose data on the basis of the schedule information, andincreases a processing speed of the third process in such a manner thatthe calculated resolution number is equal to or less than the number ofsets of the image determination-purpose data corresponding to the rasterdata.
 7. The image processing apparatus according to claim 6, whereinthe hardware processor upon having changed the processing speed of thethird process, regenerates the schedule information on the basis of thechanged processing speed, and determines the buffer's capacity to beextended, on the basis of the regenerated schedule information.
 8. Theimage processing apparatus according to claim 1, wherein the hardwareprocessor upon the time schedule indicated by the schedule informationhaving been determined to satisfy the overflow condition, performscontrol in such a manner as to increase a processing speed of the thirdprocess, upon having changed the processing speed of the third process,regenerates the schedule information on the basis of the changedprocessing speed, and upon a time schedule indicated by the regeneratedschedule information having been determined to satisfy the overflowcondition, performs control in such a manner as to extend the buffer. 9.The image processing apparatus according to claim 1, wherein upon theraster data output continuously outputting a plurality of sets of theraster data, the hardware processor performs control in such a manner asto extend the buffer.
 10. The image processing apparatus according toclaim 1, wherein the data transferer generates the imagedetermination-purpose data by performing predetermined image processingon the divided data.
 11. A method performed in an image processingapparatus, comprising: executing a first process of outputting rasterdata obtained by developing print data; generating imagedetermination-purpose data on the basis of divided data obtained bydividing the raster data, and executing a second process of storing thegenerated image determination-purpose data in a buffer; executing athird process of determining whether or not an image presented by theimage determination-purpose data stored in the buffer contains aspecific image; generating schedule information indicating a timeschedule of the first, second, and third processes, determining each setof raster data on whether or not the time schedule indicated by theschedule information satisfies an overflow condition; and upon havingdetermined that the time schedule satisfies the overflow condition,extending the buffer, wherein the overflow condition is a condition thatat least part of a period of the second process overlaps with at leastpart of a period during which the image determination-purpose data forwhich the third process has not been completed occupies an entire areaof the buffer.
 12. A non-transitory recording medium storing a computerreadable program causing a computer of an image processing apparatus toexecute an information processing method comprising: executing a firstprocess of outputting raster data obtained by developing print data;generating image determination-purpose data on the basis of divided dataobtained by dividing the raster data, and executing a second process ofstoring the generated image determination-purpose data in a buffer;executing a third process of determining whether or not an imagepresented by the image determination-purpose data stored in the buffercontains a specific image; generating schedule information indicating atime schedule of the first, second, and third processes, determiningeach set of raster data on whether or not the time schedule indicated bythe schedule information satisfies an overflow condition; and uponhaving determined that the time schedule satisfies the overflowcondition, extending the buffer, wherein the overflow condition is acondition that at least part of a period of the second process overlapswith at least part of a period during which the imagedetermination-purpose data for which the third process has not beencompleted occupies an entire area of the buffer.